package com.galaxy.coupon.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.galaxy.common.mybatis.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 优惠券模板对象
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("coupon_template")
public class CouponTemplate extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 优惠券名称 */
    private String name;

    /** 优惠券编码 */
    private String code;

    /** 优惠券类型(1:满减券,2:折扣券,3:立减券) */
    private Integer type;

    /** 优惠金额/折扣率 */
    private BigDecimal discount;

    /** 最低消费金额 */
    private BigDecimal minPoint;

    /** 使用范围(0:全场通用,1:指定品类,2:指定商品) */
    private Integer useScope;

    /** 范围ID(品类ID或商品ID，多个以逗号分隔) */
    private String scopeId;

    /** 有效期开始时间 */
    private Date startTime;

    /** 有效期结束时间 */
    private Date endTime;

    /** 发行总量(-1表示不限量) */
    private Integer totalCount;

    /** 已使用数量 */
    private Integer usedCount;

    /** 已领取数量 */
    private Integer receiveCount;

    /** 状态(0:未启用,1:已启用,2:已结束) */
    private Integer status;
}
